package me.mysort;

public class A01_BubbleDemo {
    public static void main(String[] args) {
        //冒泡排序

        int[] arr = {2, 4, 5, 3, 1};
        //利用冒泡排序：1,2,3,4,5
        //循环嵌套
        //外循环：执行多少轮，有n个数据，代码执行n-1次
        for (int i = 0; i < arr.length - 1; i++) {
            //内循环
            //表示每一轮中我如何比较数据，并找到当前的最大值
            //-1：防止越界
            //-i：提高效率，每一轮执行的次数比上一轮少一次
            for (int j = 0; j < arr.length - 1 - i; j++) {
                if (arr[j] > arr[j + 1]) {
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
        printArr(arr);
    }

    private static void printArr(int[] arr) {
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
}
